Skip to content

ctap2: establish hmac-secret shared secret without PUAT#365

Open
iiTONELOC wants to merge 1 commit into
mozilla:ctap2-2021from
iiTONELOC:fix/get-assertion-hmac-secret-shared-secret
Open

ctap2: establish hmac-secret shared secret without PUAT#365
iiTONELOC wants to merge 1 commit into
mozilla:ctap2-2021from
iiTONELOC:fix/get-assertion-hmac-secret-shared-secret

Conversation

@iiTONELOC

Copy link
Copy Markdown

For authenticatorGetAssertion, CTAP 2.1 section 12.5 has the platform obtain a shared secret before sending the hmac-secret input.

If no PIN/UV auth token is needed and no secret is cached, get_pin_uv_auth_param returns NoAuthRequired. That skips the existing setup paths, leaving process_hmac_secret_and_prf_extension with no secret; the requested extension is then omitted without an error.

Shared-secret setup now happens immediately before extension processing, limited to CTAP2 authenticators that advertise hmac-secret and do not already have one cached.

cargo test --features crypto_rust --no-default-features passes. The added regression reaches NoAuthRequired, establishes the secret, and confirms that the serialized request contains hmac-secret.

Related: #364

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant